home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 3 / BBS in a box - Trilogy III.iso / Files / Prog / L-M / MacOberon 4.0 / Toolbox Interfaces / MacImaging.Mod (.txt) < prev    next >
Encoding:
Oberon Text  |  1993-10-25  |  21.2 KB  |  453 lines  |  [.Ob./.Ob5]

  1. Syntax10.Scn.Fnt
  2. Syntax10b.Scn.Fnt
  3. Syntax10i.Scn.Fnt
  4. ParcElems
  5. Alloc
  6. Chicago10.Scn.Fnt
  7. MODULE MacImaging;    (*od 25.10.93*)
  8. (* This Module contains some essential constants, data types and routines from
  9. the NEW Inside Macintosh volume
  10.             Imaging
  11. Edit.Open DK.MacOberonApp.Text for more information on how to create
  12. standalone Macintosh applications using MacOberon. *)
  13. IMPORT
  14.     SYSTEM, ME:=MacMemory;
  15. CONST
  16.     (*QuickDraw Transfer Modes*)
  17.         srcCopy*=0; srcOr*=1; srcXor*=2; srcBic*=3; notSrcCopy*=4; notSrcOr*=5; notSrcXor*=6; notSrcBic*=7;
  18.         patCopy*=8; patOr*=9; patXor*=10; patBic*=11; notPatCopy*=12; notPatOr*=13; notPatXor*=14; notPatBic*=15;
  19.     (*QuickDraw Text Styles*)
  20.         plain*=0; bold*=1; italic*=2; underline*=4; outline*=8; shadow*=16; condense*=32; extend*=64;
  21.         Point*=RECORD v*, h*: INTEGER END;
  22.         Rect*=RECORD top*, left*, bottom*, right*: INTEGER END;
  23.         RgnHandle*=POINTER- TO RECORD END;
  24.         Pattern*=ARRAY 2 OF LONGINT;
  25.         PatPtr*=POINTER- TO Pattern;
  26.         PatHandle*=POINTER- TO RECORD p*: PatPtr END;
  27.         BitMap*=RECORD
  28.             baseAddr*: ME.Ptr;
  29.             rowBytes*: INTEGER;
  30.             bounds*: Rect
  31.         END;
  32.         Cursor*=RECORD
  33.             data*, mask*: ARRAY 16 OF INTEGER;
  34.             hotSpot*: Point
  35.         END;
  36.         GrafPtr*=POINTER- TO GrafPort;
  37.         GrafPort*=RECORD
  38.             device: INTEGER; portBits*: BitMap; portRect*: Rect;
  39.             visRgn*, clipRgn*: RgnHandle; bkPat, fillPat: Pattern;
  40.             pnLoc*, pnSize*: Point; pnMode*: INTEGER; pnPat*: Pattern; pnVis: INTEGER;
  41.             txFont*, txFace*, txMode*, txSize*: INTEGER; spExtra: LONGINT;
  42.             fgColor*, bkColor*: LONGINT; colrBit, patStretch: INTEGER;
  43.             picSave, rgnSave, polySave: ME.Handle; grafProcs: ME.Ptr
  44.         END;
  45.         PicPtr*= POINTER- TO Picture;
  46.         PicHandle*= POINTER- TO RECORD p*:PicPtr END;
  47.         Picture*= RECORD
  48.             picSize*: INTEGER;
  49.             picFrame*: Rect
  50.         END;
  51.         PolyPtr*= POINTER- TO Polygon;
  52.         PolyHandle*= POINTER- TO RECORD p*:PolyPtr END;
  53.         Polygon*= RECORD
  54.             polySize*: INTEGER;
  55.             polyBBox*: Rect
  56.       END;
  57.     (* Color QuickDraw *)
  58.         RGBColor*=RECORD
  59.             red*:INTEGER;
  60.             green*:INTEGER;
  61.             blue*:INTEGER
  62.         END;
  63.         ColorSpec*=RECORD
  64.             value*:INTEGER;
  65.             rgb*:RGBColor
  66.         END;
  67.         CTabHandle*= ME.Handle;
  68.         PixMapPtr*= POINTER- TO PixMap;
  69.         PixMapHandle*= POINTER- TO RECORD p*:PixMapPtr END;
  70.         PixMap*= RECORD
  71.             baseAddr*: LONGINT;
  72.             rowBytes*: INTEGER;
  73.             bounds*: Rect;
  74.             pmVersion*: INTEGER;
  75.             packType*: INTEGER;
  76.             packSize*: LONGINT;
  77.             hRes*: LONGINT;
  78.             vRes: LONGINT;
  79.             pixelType*: INTEGER;
  80.             pixelSize*: INTEGER;
  81.             cmpCount*: INTEGER;
  82.             cmpSize*: INTEGER;
  83.             planeBytes*: LONGINT;
  84.             pmTable*: CTabHandle;
  85.             pmReserved*: LONGINT
  86.         END;
  87.         PixPatPtr*=POINTER- TO PixPat;
  88.         PixPatHandle*= POINTER- TO RECORD p*:PixPatPtr END;
  89.         PixPat*= RECORD
  90.             patType*: INTEGER;
  91.             patMap*: PixMapHandle;
  92.             patData*: ME.Handle;
  93.             patXData*: ME.Handle;
  94.             patXValid*: INTEGER;
  95.             patXMap*: ME.Handle;
  96.             pat1Data*: Pattern
  97.         END;
  98.         CCrsrPtr*= POINTER- TO CCrsr;
  99.         CCrsrHandle*= POINTER- TO RECORD p*:CCrsrPtr END;
  100.         CCrsr*= RECORD
  101.             crsrType*: INTEGER;
  102.             crsrMap*: PixMapHandle;
  103.             crsrData*: ME.Handle;
  104.             crsrXData*: ME.Handle;
  105.             crsrXValid*: INTEGER;
  106.             crsrXHandle: ME.Handle;
  107.             crsr1Data*: ARRAY 16 OF INTEGER;
  108.             crsrMask*: ARRAY 16 OF INTEGER;
  109.             crsrHotSpot*: Point;
  110.             crsrXTable: LONGINT;
  111.             crsrID*: LONGINT
  112.         END;
  113.         CIconPtr*= POINTER- TO CIcon;
  114.         CIconHandle*= POINTER- TO RECORD p*:CIconPtr END;
  115.         CIcon*= RECORD
  116.             iconPMap*: PixMap;
  117.             iconMask*: BitMap;
  118.             iconBMap*: BitMap;
  119.             iconData*: ME.Handle;
  120.             iconMaskData*: LONGINT
  121.         END;
  122.         GDPtr*= POINTER- TO GDevice;
  123.         GDHandle*= POINTER- TO RECORD p*:GDPtr END;
  124.         GDevice*= RECORD
  125.             gdRefNum*: INTEGER;
  126.             gdID*: INTEGER;
  127.             gdType*: INTEGER;
  128.             gdITable: ME.Handle;
  129.             gdResPref*: INTEGER;
  130.             gdSearchProc*: ME.Handle;
  131.             gdCompProc*: ME.Handle;
  132.             gdFlags*: INTEGER;
  133.             gdPMap*: PixMapHandle;
  134.             gdRefCon*: LONGINT;
  135.             gdNextGD*: GDHandle;
  136.             gdRect*: Rect;
  137.             gdMode*: LONGINT;
  138.             gdCCBytes*: INTEGER;
  139.             gdCCDepth*: INTEGER;
  140.             gdCCXData: ME.Handle;
  141.             gdCCXMask: ME.Handle;
  142.             gdReserved: LONGINT
  143.         END;
  144.         CGrafPtr*=POINTER- TO CGrafPort;
  145.         CGrafPort*=RECORD
  146.             device*: INTEGER;
  147.             portPixMap*: PixMapHandle;
  148.             portVersion*: INTEGER;
  149.             grafVars*: ME.Handle;
  150.             chExtra*: INTEGER;
  151.             pnLocHFrac*: INTEGER;
  152.             portRect*: Rect;
  153.             visRgn*: RgnHandle;
  154.             clipRgn*: RgnHandle;
  155.             bkPixPat*: PixPatHandle;
  156.             rgbFgColor*: RGBColor;
  157.             rgbBkColor*: RGBColor;
  158.             pnLoc*: Point;
  159.             pnSize*: Point;
  160.             pnMode*: INTEGER;
  161.             pnPixPat*: PixPatHandle;
  162.             fillPixPat*: PixPatHandle;
  163.             pnVis*: INTEGER;
  164.             txFont*: INTEGER;
  165.             txFace*: INTEGER;
  166.             txMode*: INTEGER;
  167.             txSize*: INTEGER;
  168.             spExtra*: LONGINT;
  169.             fgColor*: LONGINT;
  170.             bkColor*: LONGINT;
  171.             colrBit*: INTEGER;
  172.             patStretch*: INTEGER;
  173.             picSave: ME.Handle;
  174.             rgnSave: ME.Handle;
  175.             polySave: ME.Handle;
  176.             grafProcs: LONGINT
  177.         END;
  178.     (* GWorld *)
  179.         GWorldPtr* = CGrafPtr;
  180.         GWorldFlags* = INTEGER;
  181.     (* Palette Manager *)
  182.         ColorInfo*= RECORD
  183.              ciRGB: RGBColor;
  184.              ciUsage*: INTEGER;
  185.              ciTolerance*: INTEGER;
  186.              ciDataFields: ARRAY 3 OF INTEGER
  187.          END;
  188.         PaletteHandle*= ME.Handle;
  189.     (* Printing Manager *)
  190.         TPrStl*= RECORD
  191.             wDev*  : INTEGER;
  192.             iPageV*: INTEGER;
  193.             iPageH*: INTEGER;
  194.             bPort*: SHORTINT;
  195.             feed*: SHORTINT
  196.         END;
  197.         TPrInfo*= RECORD
  198.             iDev* : INTEGER;
  199.             iVRes*: INTEGER;
  200.             iHRes*: INTEGER;
  201.             rPage*: Rect
  202.         END;
  203.         TPPrint*= POINTER- TO TPrint;
  204.         THPrint*= POINTER- TO RECORD p*:TPPrint END;
  205.         TPrint*=RECORD
  206.             iPrVersion: INTEGER;
  207.             prInfo* : TPrInfo;
  208.             rPaper* : Rect;
  209.             prStl* : TPrStl;
  210.             prInfoPT* : TPrInfo;
  211.             prXInfo* : ARRAY 4 OF LONGINT;
  212.             prJob* : ARRAY 5 OF LONGINT;
  213.             printX : ARRAY 19 OF INTEGER
  214.         END;
  215.         TPRect* = POINTER- TO Rect;
  216.         TPrStatus*=ARRAY 13 OF INTEGER;
  217.         QuickDraw*: RECORD
  218.             privates: ARRAY 41 OF INTEGER;
  219.             screenBits*: BitMap; arrow*: Cursor;
  220.             dkGray*, ltGray*, gray*, black*, white*: Pattern;
  221.             thePort*: GrafPtr
  222.         END;
  223.     PROCEDURE- InitGraf*(VAR thePort: GrafPtr)    0A8H, 06EH;
  224.     PROCEDURE- OpenPort*(port: GrafPtr)    0A8H, 06FH;
  225.     PROCEDURE- ClosePort*(port: GrafPtr)    0A8H, 07DH;
  226.     PROCEDURE- SetPort*(port: GrafPtr)    0A8H, 073H;
  227.     PROCEDURE- GetPort*(VAR port: GrafPtr)    0A8H, 074H;
  228.     PROCEDURE- SetOrigin*(h, v: INTEGER)    0A8H, 078H;
  229.     PROCEDURE- SetClip*(rgn: RgnHandle)    0A8H, 079H;
  230.     PROCEDURE- GetClip*(rgn: RgnHandle)    0A8H, 07AH;
  231.     PROCEDURE- ClipRect*(r: Rect)    0A8H, 07BH;
  232.     PROCEDURE- BackPat*(pat: Pattern)    0A8H, 07CH;
  233.     PROCEDURE- InitCursor*    0A8H, 050H;
  234.     PROCEDURE- SetCursor*(crsr: Cursor)    0A8H, 051H;
  235.     PROCEDURE- HideCursor*()    0A8H, 052H;
  236.     PROCEDURE- ShowCursor*()    0A8H, 053H;
  237.     PROCEDURE- ObscureCursor* 0A8H, 056H;
  238.     PROCEDURE- PenSize*(width, height: INTEGER)    0A8H, 09BH;
  239.     PROCEDURE- PenPat*(pat: Pattern)    0A8H, 09DH;
  240.     PROCEDURE- PenNormal*    0A8H, 09EH;
  241.     PROCEDURE- LineTo*(h, v: INTEGER)    0A8H, 091H;
  242.     PROCEDURE- Line*(h, v: INTEGER)    0A8H, 092H;
  243.     PROCEDURE- MoveTo*(h, v: INTEGER)    0A8H, 093H;
  244.     PROCEDURE- Move*(h, v: INTEGER)    0A8H, 094H;
  245.     PROCEDURE- SetRect*(VAR r: Rect; left, top, right, bottom: INTEGER)    0A8H, 0A7H;
  246.     PROCEDURE- OffsetRect*(VAR r: Rect; dh, dv: INTEGER)    0A8H, 0A8H;
  247.     PROCEDURE- InsetRect*(r: Rect; dh, dv: INTEGER)    0A8H, 0A9H;
  248.     PROCEDURE- SectRect*(src1, src2: Rect; VAR dstRect: Rect): BOOLEAN    0A8H, 0AAH;
  249.     PROCEDURE- UnionRect*(src1, src2: Rect; VAR dstRect: Rect)    0A8H, 0ABH;
  250.     PROCEDURE- PtInRect*(pt: Point; r: Rect): BOOLEAN    0A8H, 0ADH;
  251.     PROCEDURE- FrameRect*(r: Rect)    0A8H, 0A1H;
  252.     PROCEDURE- PaintRect*(r: Rect)    0A8H, 0A2H;
  253.     PROCEDURE- EraseRect*(r: Rect)    0A8H, 0A3H;
  254.     PROCEDURE- InvertRect*(r: Rect)    0A8H, 0A4H;
  255.     PROCEDURE- FillRect*(r: Rect; pat: Pattern)    0A8H, 0A5H;
  256.     PROCEDURE- FrameOval*(r: Rect)    0A8H, 0B7H;
  257.     PROCEDURE- PaintOval*(r: Rect)    0A8H, 0B8H;
  258.     PROCEDURE- EraseOval*(r: Rect)    0A8H, 0B9H;
  259.     PROCEDURE- InvertOval*(r: Rect)    0A8H, 0BAH;
  260.     PROCEDURE- FillOval*(r: Rect; pat: Pattern)    0A8H, 0BBH;
  261.     PROCEDURE- FrameRoundRect*(r: Rect; ovalWidth, ovalHeight: INTEGER)    0A8H, 0B0H;
  262.     PROCEDURE- PaintRoundRect*(r: Rect; ovalWidth, ovalHeight: INTEGER)    0A8H, 0B1H;
  263.     PROCEDURE- EraseRoundRect*(r: Rect; ovalWidth, ovalHeight: INTEGER)    0A8H, 0B2H;
  264.     PROCEDURE- InvertRoundRect*(r: Rect; ovalWidth, ovalHeight: INTEGER)    0A8H, 0B3H;
  265.     PROCEDURE- FillRoundRect*(r: Rect; ovalWidth, ovalHeight: INTEGER; pat: Pattern)    0A8H, 0B4H;
  266.     PROCEDURE- FrameArc*(r: Rect; startAngle, arcAngle: INTEGER)    0A8H, 0BEH;
  267.     PROCEDURE- PaintArc*(r: Rect; startAngle, arcAngle: INTEGER)    0A8H, 0BFH;
  268.     PROCEDURE- EraseArc*(r: Rect; startAngle, arcAngle: INTEGER)    0A8H, 0C0H;
  269.     PROCEDURE- InvertArc*(r: Rect; startAngle, arcAngle: INTEGER)    0A8H, 0C1H;
  270.     PROCEDURE- FillArc*(r: Rect; startAngle, arcAngle: INTEGER; pat: Pattern)    0A8H, 0C2H;
  271.     PROCEDURE- OpenPicture*(picFrame: Rect): PicHandle    0A8H,0F3H;
  272.     PROCEDURE- PicComment*(kind: INTEGER;dataSize: INTEGER;dataHandle: ME.Handle)    0A8H,0F2H;
  273.     PROCEDURE- ClosePicture*    0A8H,0F4H;
  274.     PROCEDURE- DrawPicture*(myPicture: PicHandle;dstRect: Rect)    0A8H,0F6H;
  275.     PROCEDURE- KillPicture*(myPicture: PicHandle)    0A8H,0F5H;
  276.     PROCEDURE- GetPicture*(pictureID: INTEGER): PicHandle    0A9H,0BCH;
  277.     PROCEDURE- OpenPoly*(): PolyHandle    0A8H,0CBH;
  278.     PROCEDURE- ClosePoly*    0A8H,0CCH;
  279.     PROCEDURE- KillPoly*(poly: PolyHandle)    0A8H,0CDH;
  280.     PROCEDURE- OffsetPoly*(poly: PolyHandle;dh: INTEGER;dv: INTEGER)    0A8H,0CEH;
  281.     PROCEDURE- FramePoly*(poly: PolyHandle)    0A8H,0C6H;
  282.     PROCEDURE- PaintPoly*(poly: PolyHandle)    0A8H,0C7H;
  283.     PROCEDURE- ErasePoly*(poly: PolyHandle)    0A8H,0C8H;
  284.     PROCEDURE- InvertPoly*(poly: PolyHandle)    0A8H,0C9H;
  285.     PROCEDURE- FillPoly*(poly: PolyHandle;pat: Pattern)    0A8H,0CAH;
  286.     PROCEDURE- NewRgn*(): RgnHandle    0A8H, 0D8H;
  287.     PROCEDURE- DisposeRgn*(rgn: RgnHandle)    0A8H, 0D9H;
  288.     PROCEDURE- CopyRgn*(srcRgn, dstRgn: RgnHandle)    0A8H, 0DCH;
  289.     PROCEDURE- SetRectRgn*(rgn: RgnHandle; left, top, right, bottom: INTEGER)    0A8H, 0DEH;
  290.     PROCEDURE- RectRgn*(rgn: RgnHandle; r: Rect)    0A8H, 0DFH;
  291.     PROCEDURE- SectRgn*(srcRgnA, srcRgnB, dstRgn: RgnHandle)    0A8H, 0E4H;
  292.     PROCEDURE- EmptyRgn*(rgn: RgnHandle): BOOLEAN    0A8H, 0E2H;
  293.     PROCEDURE- OffsetRgn*(rgn: RgnHandle;dh: INTEGER;dv: INTEGER)    0A8H,0E0H;
  294.     PROCEDURE- DiffRgn*(srcRgnA: RgnHandle;srcRgnB: RgnHandle;dstRgn: RgnHandle)    0A8H,0E6H;
  295.     PROCEDURE- CopyBits*(srcBits, dstBits: BitMap; srcRect, dstRect: Rect; mode: INTEGER; maskRgn: RgnHandle)    0A8H, 0ECH;
  296.     PROCEDURE- LocalToGlobal*(VAR pt: Point)    0A8H, 070H;
  297.     PROCEDURE- GlobalToLocal*(VAR pt: Point)    0A8H, 071H;
  298.     (* Color QuickDraw *)
  299.     PROCEDURE- OpenCPort*(port: CGrafPtr)    0AAH,000H;
  300.     PROCEDURE- InitCPort*(port: CGrafPtr)    0AAH,001H;
  301.     PROCEDURE- CloseCPort*(port: CGrafPtr)    0A8H,07DH;
  302.     PROCEDURE- RGBForeColor*(color: RGBColor)    0AAH,014H;
  303.     PROCEDURE- RGBBackColor*(color: RGBColor)    0AAH,015H;
  304.     PROCEDURE- GetForeColor*(VAR color: RGBColor)    0AAH,019H;
  305.     PROCEDURE- GetBackColor*(VAR color: RGBColor)    0AAH,01AH;
  306.     PROCEDURE- NewPixMap*(): PixMapHandle    0AAH,003H;
  307.     PROCEDURE- DisposPixMap*(pm: PixMapHandle)    0AAH,004H;
  308.     PROCEDURE- DisposePixMap*(pm: PixMapHandle)    0AAH,004H;
  309.     PROCEDURE- CopyPixMap*(srcPM: PixMapHandle;dstPM: PixMapHandle)    0AAH,005H;
  310.     PROCEDURE- SeedCFill*(srcBits: BitMap;dstBits: BitMap;srcRect: Rect;dstRect: Rect;
  311.         seedH: INTEGER;seedV: INTEGER;matchProc: PROCEDURE;matchData: LONGINT)    0AAH,050H;
  312.     PROCEDURE- CalcCMask*(srcBits: BitMap;dstBits: BitMap;srcRect: Rect;dstRect: Rect;
  313.         seedRGB: RGBColor;matchProc: PROCEDURE;matchData: LONGINT)    0AAH,04FH;
  314.     PROCEDURE- CopyMask*(srcBits: BitMap;maskBits: BitMap;dstBits: BitMap;srcRect: Rect;
  315.         maskRect: Rect;dstRect: Rect)    0A8H,017H;
  316.     PROCEDURE- NewPixPat*(): PixPatHandle    0AAH,007H;
  317.     PROCEDURE- DisposPixPat*(pp: PixPatHandle)    0AAH,008H;
  318.     PROCEDURE- DisposePixPat*(pp: PixPatHandle)    0AAH,008H;
  319.     PROCEDURE- CopyPixPat*(srcPP: PixPatHandle;dstPP: PixPatHandle)    0AAH,009H;
  320.     PROCEDURE- PenPixPat*(pp: PixPatHandle)    0AAH,00AH;
  321.     PROCEDURE- BackPixPat*(pp: PixPatHandle)    0AAH,00BH;
  322.     PROCEDURE- GetPixPat*(patID: INTEGER): PixPatHandle    0AAH,00CH;
  323.     PROCEDURE- MakeRGBPat*(pp: PixPatHandle;myColor: RGBColor)    0AAH,00DH;
  324.     PROCEDURE- FillCRect*(r: Rect;pp: PixPatHandle)    0AAH,00EH;
  325.     PROCEDURE- FillCOval*(r: Rect;pp: PixPatHandle)    0AAH,00FH;
  326.     PROCEDURE- FillCRoundRect*(r: Rect;ovalWidth: INTEGER;ovalHeight: INTEGER;pp: PixPatHandle)    0AAH,010H;
  327.     PROCEDURE- FillCArc*(r: Rect;startAngle: INTEGER;arcAngle: INTEGER;pp: PixPatHandle)    0AAH,011H;
  328.     PROCEDURE- FillCRgn(rgn: RgnHandle;pp: PixPatHandle)    0AAH,012H;
  329.     PROCEDURE- FillCPoly*(poly: PolyHandle;pp: PixPatHandle)    0AAH,013H;
  330.     PROCEDURE- SetCPixel*(h: INTEGER;v: INTEGER;cPix: RGBColor)    0AAH,016H;
  331.     PROCEDURE- GetCPixel*(h: INTEGER;v: INTEGER;VAR cPix: RGBColor)    0AAH,017H;
  332.     PROCEDURE- GetCCursor*(crsrID: INTEGER): CCrsrHandle    0AAH,01BH;
  333.     PROCEDURE- SetCCursor*(cCrsr: CCrsrHandle)    0AAH,01CH;
  334.     PROCEDURE- AllocCursor    0AAH,01DH;
  335.     PROCEDURE- DisposCCursor*(cCrsr: CCrsrHandle)    0AAH,026H;
  336.     PROCEDURE- DisposeCCursor*(cCrsr: CCrsrHandle)    0AAH,026H;
  337.     PROCEDURE- GetCIcon*(iconID: INTEGER): CIconHandle    0AAH,01EH;
  338.     PROCEDURE- PlotCIcon*(theRect: Rect;theIcon: CIconHandle)    0AAH,01FH;
  339.     PROCEDURE- DisposeCIcon*(theIcon: CIconHandle)    0AAH,025H;
  340.     PROCEDURE- SetPortPix*(pm: PixMapHandle)    0AAH,006H;
  341.     PROCEDURE- OpColor*(color: RGBColor)    0AAH,021H;
  342.     PROCEDURE- HiliteColor*(color: RGBColor)    0AAH,022H;
  343.     PROCEDURE- DisposCTable*(cTable: CTabHandle)    0AAH,024H;
  344.     PROCEDURE- GetCTable*(ctID: INTEGER): CTabHandle    0AAH,018H;
  345.     PROCEDURE- CharExtra*(extra: LONGINT)    0AAH,023H;
  346.     PROCEDURE- BitMapToRegion*(region: RgnHandle;bMap: BitMap): INTEGER    0A8H,0D7H;
  347.     PROCEDURE- CopyDeepMask*(srcBits: BitMap;maskBits: BitMap;dstBits: BitMap;
  348.         srcRect: Rect;maskRect: Rect;dstRect: Rect;mode: INTEGER;maskRgn: RgnHandle)    0AAH,051H;
  349.     (* Graphic Devices *)
  350.     PROCEDURE- GetMaxDevice*(globalRect: Rect): GDHandle    0AAH,027H;
  351.     PROCEDURE- GetDeviceList*(): GDHandle    0AAH,029H;
  352.     PROCEDURE- GetMainDevice*(): GDHandle    0AAH,02AH;
  353.     PROCEDURE- GetNextDevice*(curDevice: GDHandle): GDHandle    0AAH,02BH;
  354.     PROCEDURE- TestDeviceAttribute*(gdh: GDHandle;attribute: INTEGER): BOOLEAN    0AAH,02CH;
  355.     PROCEDURE- SetDeviceAttribute*(gdh: GDHandle;attribute: INTEGER;value: BOOLEAN)    0AAH,02DH;
  356.     PROCEDURE- InitGDevice*(qdRefNum: INTEGER;mode: LONGINT;gdh: GDHandle)    0AAH,02EH;
  357.     PROCEDURE- NewGDevice*(refNum: INTEGER;mode: LONGINT): GDHandle    0AAH,02FH;
  358.     PROCEDURE- DisposGDevice*(gdh: GDHandle)    0AAH,030H;
  359.     PROCEDURE- SetGDevice*(gd: GDHandle)    0AAH,031H;
  360.     PROCEDURE- GetGDevice*(): GDHandle    0AAH,032H;
  361.     (* Color Manager *)
  362.     PROCEDURE- Color2Index*(myColor: RGBColor): LONGINT    0AAH,033H;
  363.     PROCEDURE- Index2Color*(index: LONGINT;VAR aColor: RGBColor)    0AAH,034H;
  364.     PROCEDURE- InvertColor*(VAR myColor: RGBColor)    0AAH,035H;
  365.     PROCEDURE- RealColor*(color: RGBColor): BOOLEAN    0AAH,036H;
  366.     PROCEDURE- GetSubTable*(myColors: CTabHandle;iTabRes: INTEGER;targetTbl: CTabHandle)    0AAH,037H;
  367.     PROCEDURE- MakeITable*(cTabH: CTabHandle;iTabH: ME.Handle;res: INTEGER)    0AAH,039H;
  368.     PROCEDURE- GetCTSeed*(): LONGINT    0AAH,028H;
  369.     PROCEDURE- ProtectEntry*(index: INTEGER;protect: BOOLEAN)    0AAH,03DH;
  370.     PROCEDURE- ReserveEntry*(index: INTEGER;reserve: BOOLEAN)    0AAH,03EH;
  371.     PROCEDURE- QDError*(): INTEGER    0AAH,040H;
  372.     (* Palette Manager *)
  373.     PROCEDURE- InitPalettes*    0AAH,090H;
  374.     PROCEDURE- NewPalette*(entries: INTEGER;srcColors: CTabHandle;srcUsage: INTEGER;
  375.          srcTolerance: INTEGER): PaletteHandle    0AAH,091H;
  376.     PROCEDURE- GetNewPalette*(PaletteID: INTEGER): PaletteHandle    0AAH,092H;
  377.     PROCEDURE- DisposePalette*(srcPalette: PaletteHandle)    0AAH,093H;
  378.     PROCEDURE- ActivatePalette*(srcWindow: GrafPtr)    0AAH,094H;
  379.     PROCEDURE- SetPalette*(dstWindow: GrafPtr;srcPalette: PaletteHandle;cUpdates: BOOLEAN)    0AAH,095H;
  380.     PROCEDURE- GetPalette*(srcWindow: GrafPtr): PaletteHandle    0AAH,096H;
  381.     PROCEDURE- CopyPalette*(srcPalette: PaletteHandle;dstPalette: PaletteHandle;
  382.          srcEntry: INTEGER;dstEntry: INTEGER;dstLength: INTEGER)    0AAH,0A1H;
  383.     PROCEDURE- PmForeColor*(dstEntry: INTEGER)    0AAH,097H;
  384.     PROCEDURE- PmBackColor*(dstEntry: INTEGER)    0AAH,098H;
  385.     PROCEDURE- AnimateEntry*(dstWindow: GrafPtr;dstEntry: INTEGER;srcRGB: RGBColor)    0AAH,099H;
  386.     PROCEDURE- AnimatePalette*(dstWindow: GrafPtr;srcCTab: CTabHandle;srcIndex: INTEGER;
  387.          dstEntry: INTEGER;dstLength: INTEGER)    0AAH,09AH;
  388.     PROCEDURE- GetEntryColor(srcPalette: PaletteHandle;srcEntry: INTEGER;VAR dstRGB: RGBColor)    0AAH,09BH;
  389.     PROCEDURE- SetEntryColor(dstPalette: PaletteHandle;dstEntry: INTEGER;srcRGB: RGBColor)    0AAH,09CH;
  390.     PROCEDURE- GetEntryUsage(srcPalette: PaletteHandle;srcEntry: INTEGER;VAR dstUsage: INTEGER;
  391.          VAR dstTolerance: INTEGER)    0AAH,09DH;
  392.     PROCEDURE- SetEntryUsage*(dstPalette: PaletteHandle;dstEntry: INTEGER;srcUsage: INTEGER;
  393.          srcTolerance: INTEGER)    0AAH,09EH;
  394.     PROCEDURE- CTab2Palette(srcCTab: CTabHandle;dstPalette: PaletteHandle;srcUsage: INTEGER;
  395.          srcTolerance: INTEGER)    0AAH,09FH;
  396.     PROCEDURE- Palette2CTab*(srcPalette: PaletteHandle;dstCTab: CTabHandle)    0AAH,0A0H;
  397.     PROCEDURE- RestoreDeviceClut*(gd: GDHandle)    070H,002H,0AAH,0A2H;
  398.     PROCEDURE- ResizePalette*(p: PaletteHandle;size: INTEGER)    070H,003H,0AAH,0A2H;
  399.     PROCEDURE- SetDepth*(gd: GDHandle;depth: INTEGER;whichFlags: INTEGER;flags: INTEGER): INTEGER
  400.         030H,03CH,00AH,013H,0AAH,0A2H;
  401.     PROCEDURE- HasDepth*(gd: GDHandle;depth: INTEGER;whichFlags: INTEGER;flags: INTEGER): INTEGER
  402.         030H,03CH,00AH,014H,0AAH,0A2H;
  403.     (* Color Picker *)
  404.     PROCEDURE- GetColor*(where: Point;prompt: ME.Str255;inColor: RGBColor;VAR outColor: RGBColor): BOOLEAN
  405.         03FH,03CH,000H,009H,0A8H,02EH;
  406.     (* GWorlds *)
  407.     PROCEDURE- NewGWorld*(VAR offscreenGWorld: GWorldPtr;PixelDepth: INTEGER;boundsRect: Rect;
  408.         cTable: CTabHandle;aGDevice: GDHandle;flags: GWorldFlags): INTEGER    020H,03CH,000H,016H,000H,000H,0ABH,01DH;
  409.     PROCEDURE- LockPixels*(pm: PixMapHandle): BOOLEAN    020H,03CH,000H,004H,000H,001H,0ABH,01DH;
  410.     PROCEDURE- UnlockPixels*(pm: PixMapHandle)    020H,03CH,000H,004H,000H,002H,0ABH,01DH;
  411.     PROCEDURE- UpdateGWorld*(VAR offscreenGWorld: GWorldPtr;pixelDepth: INTEGER;
  412.         boundsRect: Rect;cTable: CTabHandle;aGDevice: GDHandle;flags: GWorldFlags): GWorldFlags
  413.         020H,03CH,000H,016H,000H,003H,0ABH,01DH;
  414.     PROCEDURE- DisposeGWorld*(offscreenGWorld: GWorldPtr)    020H,03CH,000H,004H,000H,004H,0ABH,01DH;
  415.     PROCEDURE- GetGWorld*(VAR port: CGrafPtr;VAR gdh: GDHandle)    020H,03CH,000H,008H,000H,005H,0ABH,01DH;
  416.     PROCEDURE- SetGWorld*(port: CGrafPtr;gdh: GDHandle)    020H,03CH,000H,008H,000H,006H,0ABH,01DH;
  417.     PROCEDURE- CTabChanged*(ctab: CTabHandle)    020H,03CH,000H,004H,000H,007H,0ABH,01DH;
  418.     PROCEDURE- PixPatChanged*(ppat: PixPatHandle)    020H,03CH,000H,004H,000H,008H,0ABH,01DH;
  419.     PROCEDURE- PortChanged*(port: GrafPtr)    020H,03CH,000H,004H,000H,009H,0ABH,01DH;
  420.     PROCEDURE- GDeviceChanged*(gdh: GDHandle)    020H,03CH,000H,004H,000H,00AH,0ABH,01DH;
  421.     PROCEDURE- AllowPurgePixels*(pm: PixMapHandle)    020H,03CH,000H,004H,000H,00BH,0ABH,01DH;
  422.     PROCEDURE- NoPurgePixels*(pm: PixMapHandle)    020H,03CH,000H,004H,000H,00CH,0ABH,01DH;
  423.     PROCEDURE- GetPixelsState*(pm: PixMapHandle): GWorldFlags    020H,03CH,000H,004H,000H,00DH,0ABH,01DH;
  424.     PROCEDURE- SetPixelsState*(pm: PixMapHandle;state: GWorldFlags)    020H,03CH,000H,008H,000H,00EH,0ABH,01DH;
  425.     PROCEDURE- GetPixBaseAddr*(pm: PixMapHandle): LONGINT    020H,03CH,000H,004H,000H,00FH,0ABH,01DH;
  426.     PROCEDURE- NewScreenBuffer*(globalRect: Rect;purgeable: BOOLEAN;VAR gdh: GDHandle;
  427.         VAR offscreenPixMap: PixMapHandle): INTEGER    020H,03CH,000H,00EH,000H,010H,0ABH,01DH;
  428.     PROCEDURE- DisposeScreenBuffer*(offscreenPixMap: PixMapHandle)    020H,03CH,000H,004H,000H,011H,0ABH,01DH;
  429.     PROCEDURE- GetGWorldDevice*(offscreenGWorld: GWorldPtr): GDHandle    020H,03CH,000H,004H,000H,012H,0ABH,01DH;
  430.     PROCEDURE- QDDone*(port: GrafPtr): BOOLEAN    020H,03CH,000H,004H,000H,013H,0ABH,01DH;
  431.     PROCEDURE- OffscreenVersion*(): LONGINT    070H,014H,0ABH,01DH;
  432.     PROCEDURE- NewTempScreenBuffer*(globalRect: Rect;purgeable: BOOLEAN;VAR gdh: GDHandle;
  433.         VAR offscreenPixMap: PixMapHandle): INTEGER    020H,03CH,000H,00EH,000H,015H,0ABH,01DH;
  434.     PROCEDURE- PixMap32Bit*(pmHandle: PixMapHandle): BOOLEAN    020H,03CH,000H,004H,000H,016H,0ABH,01DH;
  435.     PROCEDURE- GetGWorldPixMap*(offscreenGWorld: GWorldPtr): PixMapHandle    020H,03CH,000H,004H,000H,017H,0ABH,01DH;
  436.     (* Printing Manager *)
  437.     PROCEDURE - PrGeneral*(pData: LONGINT) 02FH, 03CH, 070H, 007H, 004H, 080H, 0A8H, 0FDH;
  438.     PROCEDURE - PrError*(): INTEGER    02FH, 03CH, 0BAH, 000H, 000H, 000H, 0A8H, 0FDH;
  439.     PROCEDURE - PrOpen*    02FH, 03CH, 0C8H, 000H, 000H, 000H, 0A8H, 0FDH;
  440.     PROCEDURE - PrValidate*(hPrint: THPrint): BOOLEAN    02FH, 03CH, 052H, 004H, 004H, 098H, 0A8H, 0FDH;
  441.     PROCEDURE - PrintDefault*(hPrint: THPrint)    02FH, 03CH, 020H, 004H, 004H, 080H, 0A8H, 0FDH;
  442.     PROCEDURE - PrStlDialog*(hPrint: THPrint): BOOLEAN    02FH, 03CH, 02AH, 004H, 004H, 084H, 0A8H, 0FDH;
  443.     PROCEDURE - PrJobDialog*(hPrint: THPrint): BOOLEAN    02FH, 03CH, 032H, 004H, 004H, 088H, 0A8H, 0FDH;
  444.     PROCEDURE - PrOpenDoc*(hPrint:THPrint; pPrPort: GrafPtr;pIOBuf: LONGINT): GrafPtr
  445.         02FH, 03CH, 004H, 000H, 00CH, 000H, 0A8H, 0FDH;
  446.     PROCEDURE - PrCloseDoc*(pPrPort: GrafPtr)    02FH, 03CH, 008H, 000H, 004H, 084H, 0A8H, 0FDH;
  447.     PROCEDURE - PrClose*    02FH, 03CH, 0D0H, 000H, 000H, 000H, 0A8H, 0FDH;
  448.     PROCEDURE - PrOpenPage*(pPrPort: GrafPtr; pPageFrame: TPRect) 02FH, 03CH, 010H, 000H, 008H, 008H, 0A8H, 0FDH;
  449.     PROCEDURE - PrClosePage*(pPrPort: GrafPtr)    02FH, 03CH, 018H, 000H, 004H, 00CH, 0A8H, 0FDH;
  450.     PROCEDURE - PrPicFile*(hPrint : THPrint; pPrPort : GrafPtr;pIOBuf, pDevBuf: LONGINT; VAR prStatus: TPrStatus)
  451.         02FH, 03CH, 060H, 005H, 014H, 080H, 0A8H, 0FDH;
  452. END MacImaging.
  453.